The concepts of the Object-oriented paradigm using Java. The basic principles of software engineering are emphasized. We study how to design and think in an object oriented fashion. As a final project, students work in groups to develop a Gnutella distributed music-sharing client. Text: Core Java 2, Volume I: Fundamentals and Volume II: Advanced Features,Hortsmann and Cornell. Requirements: One exam, two problem sets, one project. favoritefavoritefavoritefavorite ( 3 reviews ) Topic: object oriented programming
This is a 23-lecture series on Image Processing that I have created over the past 17 years (1999-2015) for my course, EECE 4353 / 5353, at the Vanderbilt University School of Engineering. The files are all in Adobe Acrobat (.pdf) format and MS Powerpoint (.ppt) format. They are quite large because of the images in them. The topics covered include: Image Enhancement by Point Operations, Color Correction, The 2-D Fourier Transform and Convolution, Linear Spatial Filtering, Image Sampling and... favoritefavoritefavoritefavorite ( 23 reviews ) Topics: image processing, image enhancement, image noise reduction, Fourier transforms, convolution,...
A theoretical treatment of what can be computed and how fast it can be done. Applications to compilers, string searching, and control circuit design will be discussed. The hierarchy of finite state machines, pushdown machines, context free grammars and Turing machines will be analyzed, along with their variations. The notions of decidability, complexity theory and a complete discussion of NP-Complete problems round out the course. Text: Introduction to the Theory of Computation, Michael Sipser.... favoritefavoritefavoritefavoritefavorite ( 8 reviews ) Topic: computation
In this course design and analysis of algorithms is studied. Methodologies include: divide and conquer, dynamic programming, and greedy strategies. Their applications involve: sorting, ordering and searching, graph algorithms, geometric algorithms, mathematical (number theory, algebra and linear algebra) algorithms, and string matching algorithms. We study algorithm analysis - worst case, average case, and amortized, with an emphasis on the close connection between the time complexity of an... favoritefavoritefavoritefavoritefavorite ( 8 reviews ) Topics: algorithms, algorithm design
This course covers the mathematical topics most directly related to computer science. Topics include: logic, relations, functions, basic set theory, countability and counting arguments, proof techniques, mathematical induction, graph theory, combinatorics, discrete probability, recursion, recurrence relations, and number theory. Emphasis is placed on providing a context for the application of the mathematics within computer science. The analysis of algorithms requires the ability to count the... favoritefavoritefavoritefavorite ( 15 reviews ) Topics: ars digita, computer science, discrete math, logic, proof techniques, recurrence relations, basic...
Includes the basics of digital logical design, computer organization and architecture including assembly language, processor design, memory hierarchies and pipelining. Students examine the detailed construction of a very simple computer. Problem sets use Beta-Sim, a RISC simulator written by Mike Wessler. A higher level view of a modern RISC architecture is studied, using the Patterson and Hennessey introductory text, from both the programmer's point of view and the hardware designer's point of... Topics: digital logic, design, computer organization
This class covers the definition of a function, vertical line test, function notation, finding input and output, domain and range, plus homework assignments. favoritefavoritefavoritefavoritefavorite ( 6 reviews ) Topics: Mathematics, Calculus, Advanced Placement
The first lecture of twenty from MIT's Structure and Interpretation of Computer Programs course. favoritefavoritefavoritefavoritefavorite ( 3 reviews ) Topics: Sussman, MIT, Abelson, lecture, computer science
An introduction to programming and the power of abstraction, using Abelson and Sussman's classic textbook of the same name. Key concepts include: building abstractions, computational processes, higher-order procedures, compound data, data abstractions, controlling interactions, generic operations, self-describing data, message passing, streams and infinite data structures, meta-linguistic abstraction, interpretation of programming languages, machine model, compilation, and embedded languages.... favoritefavoritefavoritefavorite ( 1 reviews ) Topics: ars digita, computer science, programming, abstraction
Learn about the first Americans, the voyage of Christopher Columbus, and Cortez' defeat of the Aztecs. To watch the interactive media files (see left-hand column) first click the link to open it, then right-click anywhere on the page and select "play". favoritefavorite ( 4 reviews ) Topics: American History, Advanced Placement
A more formal approach to Relational Database Management Systems, compared the way they were covered during Web Applications. Database systems are discussed from the physical layer of B-trees and file servers to the abstract layer of relational design. Also includes alternative and generic approaches to database design and database management system including relational, object-relational, and object-oriented systems, SQL standards, algebraic query languages, integrity constraints, triggers,... favoritefavoritefavoritefavorite ( 3 reviews ) Topics: databases, relational database management systems, RDBMS
Topics on the engineering of computer software and hardware systems: techniques for controlling complexity, system infrastructure, networks and distributed systems, atomicity and coordination of parallel activities, recovery and reliability, privacy of information, impact of computer systems on society. Case studies of working systems and outside reading in the current literature provide comparisons and contrasts. The group project is to write an NSF systems proposal to fund a middle-ware... favoritefavoritefavorite ( 1 reviews ) Topic: distributed systems
This class covers the definition of a function, vertical line test, function notation, finding input and output, domain and range, plus homework assignments. favoritefavoritefavoritefavorite ( 1 reviews ) Topics: Mathematics, Calculus, Advanced Placement